package com.maben.security.controller;

import com.maben.security.util.JwtUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;

/**
 * 测试公开方法、需要用户登录方法、需要指定用户登录方法
 */
@RestController
public class TestController {

    @Resource
    private JwtUtils jwtUtils;

    // 公开接口（无需登录）
    @GetMapping("/public/hello")
    public String publicHello() {
        return "这是公开接口，任何人可访问！";
    }

    // 普通用户接口（需登录，USER/ADMIN 角色均可访问）
    @GetMapping("/hello")
    public String hello() {
        return "Hello, 登录用户:"+jwtUtils.getCurrentUserRealName();
    }

    // 管理员接口（仅 ADMIN 角色可访问）
    @GetMapping("/admin/dashboard")
    public String adminDashboard() {
        return "管理员控制台：仅管理员可见！";
    }
}
